package com.xiaopo.flying.puzzle;

import com.xiaopo.flying.puzzle.ext.PointF;
import ohos.agp.render.Path;
import ohos.agp.utils.RectFloat;

import java.util.List;

/**
 * Area
 *
 * @author wupanjie
 * @since 2021-08-09
 */
public interface Area {
    float left();

    float top();

    float right();

    float bottom();

    float centerX();

    float centerY();

    float width();

    float height();

    PointF getCenterPoint();

    boolean contains(PointF point);

    boolean contains(float x, float y);

    boolean contains(Line line);

    Path getAreaPath();

    RectFloat getAreaRect();

    List<Line> getLines();

    PointF[] getHandleBarPoints(Line line);

    float radian();

    void setRadian(float radian);

    float getPaddingLeft();

    float getPaddingTop();

    float getPaddingRight();

    float getPaddingBottom();

    void setPadding(float padding);

    void setPadding(float paddingLeft, float paddingTop, float paddingRight, float paddingBottom);

}





